home *** CD-ROM | disk | FTP | other *** search
- 2 dima$(12),o$(24),o(24),r$(15)
- 5 poke53280,6:poke53281,0:poke646,1:printchr$(14)
- 10 goto15000
- 1000 remconversation
- 1010 ifr=14andd(4)=0thengosub25030:ifde(2)=4then16000
- 1020 ifr=4thengosub25000:ifde(1)=4then16000
- 1030 x=0
- 1040 iff4=3then16000
- 1060 print
- 1070 print"--->[215]hat should [201] do now?":print:inputc$:print
- 1080 ifc$=""thenprinta$(1):goto1000
- 1090 iflen(c$)=1ormid$(c$,2,1)=" "then1210
- 1100 ifmid$(c$,2,1)=" "thenprinta$(2):printleft$(c$,1):goto1000
- 1110 iflen(c$)=2ormid$(c$,3,1)=" "then2000
- 1120 iflen(c$)=3ormid$(c$,4,1)=" "then3000
- 1130 iflen(c$)=4ormid$(c$,5,1)=" "then4000
- 1140 iflen(c$)=5ormid$(c$,6,1)=" "then6000
- 1150 iflen(c$)=6ormid$(c$,7,1)=" "then8000
- 1160 iflen(c$)=7ormid$(c$,8,1)=" "then8500
- 1170 iflen(c$)=8ormid$(c$,9,1)=" "then9000
- 1180 iflen(c$)=9ormid$(c$,10,1)=" "then9500
- 1190 iflen(c$)=11ormid$(c$,12,1)=" "then9600
- 1200 printa$(1):goto1000
- 1210 fl=0:ifdark=1and(l=0 or o(15))thenfl=1
- 1212 iffl=1thenprint"[208]oe wrote in the 19th century. [212]hat "
- 1214 iffl=1thenprint"was before they invented x-rays vision."
- 1216 iffl=1thenprint"[201]t's dark in here!!!":goto1000
- 1218 fl=0
- 1220 ifc$="s"then1320
- 1230 ifc$="n"then1340
- 1240 ifc$="w"then1370
- 1250 ifc$="e"then1400
- 1260 ifc$="u"then1440
- 1270 ifc$="d"then1600
- 1280 ifc$="i"then14100
- 1290 ifleft$(c$,1)<>"l"thenprinta$(2):printleft$(c$,1):goto1000
- 1300 ifc$="l"then13500
- 1310 c$="look"+mid$(c$,2):goto4000
- 1320 ifs=0 thenprinta$(3):goto1000
- 1330 r=r-1:goto13000
- 1340 ifn=0thenprinta$(3):goto1000
- 1350 ifr=1andd(1)=0thenprinta$(4):goto1000
- 1360 r=r+1:goto13000
- 1370 ifw=0 thenprinta$(3):goto1000
- 1380 ifr=4thenprint"[201] can't do that. [212]he moving wall has"
- 1382 ifr=4thenprint"blocked the door!":goto1000
- 1390 r=5:goto13000
- 1400 ife=0 thenprinta$(3):goto1000
- 1410 ifr=2thenr=4
- 1420 ifr=5thenr=2
- 1430 goto13000
- 1440 ifu=0 thenprinta$(3):goto1000
- 1450 ifr=2thens=1:gosub26000:goto1000
- 1460 ifr=4andwtthenprint"[201] can't fit. [201]'m carrying too much.":goto1000
- 1470 ifr=4thenr=6
- 1480 ifr=7thenr=3
- 1490 ifr=8thenr=7
- 1500 ifr=9thenr=8
- 1510 ifr=10thenr=9
- 1520 ifr=14andd(4)=0thenprinta$(4):goto1000
- 1530 ifr=14thenr=5
- 1540 ifr=13andd(5)=0thenprinta$(4):goto1000
- 1550 ifr=13thenr=14
- 1560 ifr=12andd(6)=0thenprinta$(4):goto1000
- 1570 ifr=12thenr=13
- 1580 ifr=11thenr=12
- 1590 goto13000
- 1600 ifr=8andd(3)thend=1
- 1610 ifd=0thenprinta$(3):goto1000
- 1615 ifr=6andd(8)=0thenprinta$(4):goto1000
- 1620 ifr=6thenr=2:s=2:gosub26000
- 1630 ifr=9thenr=10
- 1640 ifr=8thenr=9
- 1650 ifr=7thenr=8
- 1660 ifr=3andd(2)=0thenprinta$(5):goto1000
- 1670 ifr=3thenr=7
- 1680 ifr=12thenr=11
- 1690 ifr=13thenr=12
- 1700 ifr=14thenprinta$(4):goto1000
- 1710 goto13000
- 2000 rem2letter1stwords
- 2010 s$=left$(c$,2):s2$=" ":iflen(c$)>3thens2$=mid$(c$,4)
- 2020 ifs$<>"go"thenprinta$(2):prints$:goto1000
- 2030 ifc$="go"thenprinta$(1):goto1000
- 2040 fl=0:ifs2$<>"south"andr=3ando(7)=rthenfl=1
- 2042 iffl=1thenprint"[212]he orangutan won't let me.":goto1000
- 2044 fl=0
- 2050 fl=0:ifs2$="north"ors2$="south"ors2$="east"ors2$="west"ors2$="up"thenfl=1
- 2052 ifs2$="down"orfl=1thenc$=left$(s2$,1):goto1210
- 2054 fl=0
- 2100 ifs2$<>"clock"then2150
- 2110 ifr<>3thenprinta$(6):goto1000
- 2120 ifd(7)=0thenprint"[201]t has to be opened first.":goto1000
- 2130 ifd(2)=0thende=3:gosub27000:goto16000
- 2140 r=7:goto13000
- 2150 ifs2$="door"thens=3:gosub26000:goto1000
- 2155 ifs2$="hole"andr=8ando(22)=rthenr=9:goto13000
- 2160 fl=0:if(s2$="plaque"andr=1)or(s2$="ladder"andr=4)thenfl=1
- 2162 if((s2$="raven"ors2$="perch")andr=5)thenfl=1
- 2164 iffl=1thenprint"[207]kay.":fl=0:goto1000
- 2170 ifs2$="desk"andr=2thens=4:gosub26000:goto1000
- 2180 ifs2$<>"shelves"ands2$<>"bookshelves"then2250
- 2190 fl=0:ifr=2and(o(6)=roro(8)=r)thens=5:gosub26000:fl=1
- 2192 iffl=1thenifo(6)=rando(8)=rthens=6:gosub26000:fl=0
- 2200 ifr=2and(o(6)=roro(8)=r)then1000
- 2210 ifr=2ando(6)=1000thens=5:gosub26000:s=6:gosub26000:o(6)=r:o(8)=r:goto1000
- 2220 ifr=2thenprinta$(9):goto1000
- 2230 ifs2$=" ladder"andr=4thenprint"[207]kay.":goto1000
- 2240 ifs2$=" raven"ors2$=" perch"andr=5thenprint"[207]kay.":goto1000
- 2250 ifs2$="coffin"andr=5andd(4)thenr=14:goto13000
- 2260 ifs2$="coffin"andr=5thenprint"[201]t has to be opened first.":goto1000
- 2270 ifs2$="stairs"andr=7thenprint"up or down?":goto1000
- 2280 ifs2$="stairs"andr=8then1440
- 2290 ifs2$="walls"thenprinta$(1):goto1000
- 2300 ifleft$(s2$,4)<>"pass"then2340
- 2310 ifd(3)andr=8thenr=9:goto13000
- 2320 ifr=10thenr=9:goto13000
- 2330 ifr=9thenprinta$(9):goto1000
- 2340 ifs2$="pump"andr=10thens=46:gosub26000:goto1000
- 2350 ifs2$="ledge"andr=10thenprint"[201]t's too high up.":goto1000
- 2360 ifs2$="tree"andr=11then1440
- 2370 gosub63100:goto1000
- 2380 printa$(2):prints2$:goto1000
- 3000 remthreeletterwords
- 3010 s$=left$(c$,3):s2$="":iflen(c$)>4thens2$=mid$(c$,5)
- 3020 ifc$="run"thenprint"[201] need a direction.":goto1000
- 3030 ifs$="run"thenc$="go "+s2$:goto2020
- 3040 ifs$="get"thenc$="take "+s2$:goto4160
- 3050 ifs$<>"te"then3110
- 3060 ifs2$<>"string"thenprinta$(1):goto1000
- 3070 ifo(20)<>rando(20)thenprinta$(1):goto1000
- 3080 input"to what -- in one word?";c$:ifc$<>"bug"thenprinta$(10):goto1000
- 3090 ifo(16)thenprinta$(5):goto1000
- 3100 print"[207]kay.":te=1:o$(16)="small gold bug tied to piece of string."
- 3102 o$(20)="":o(20)=0:goto1000
- 3110 ifc$="say"thenprinta$(1):goto1000
- 3120 ifs$="say"thenprint"[207]kay.":prints2$:printa$(8):goto1000
- 3125 ifs$="put"thenc$="insert "+s2$:goto8000
- 3130 ifs$<>"eat"then3220
- 3140 ifs2$="banana"ando(9)=0thenprint"[217]ummy!":o(9)=1000:goto1000
- 3150 ifs2$="opium"ando(18)=0thens=7:gosub26000:o(18)=1000:goto1000
- 3160 ifs2$=" opium"thenprinta$(5):goto1000
- 3170 forx=1to23:reado$:ifs2$=o$ando(x)=0thenprinta$(10):x=50
- 3180 next
- 3190 restore
- 3200 ifx<50thenprinta$(1)
- 3210 restore:goto1000
- 3220 ifs$<>"pet"then3260
- 3230 ifo(7)<>rthenprinta$(10):goto1000
- 3240 fl=0:ifs2$="orangutan"thenfl=1
- 3242 iffl=1thenprint"[200]e looks at me strangely and waves his hand at me.":goto1000
- 3244 fl=0
- 3250 printa$(1):goto1000
- 3260 ifs$="net"ando(14)=0thenfl=1
- 3262 iffl=1thenprint"[212]his is a butter fly net. [196]o you think "s2$" looks like";
- 3264 iffl=1thenprint" a butterfly?":goto1000
- 3270 ifs$="net"thenprinta$(5):goto1000
- 3280 ifs$<>"rap"ands$<>"tap"ands$<>"hit"then3310
- 3290 fl=0:ifo(10)=0thenfl=1
- 3292 iffl=1thenprint"[201]f you want to hit something with the "
- 3294 iffl=1thenprint"pix, try the expression 'pick (blank)'."
- 3296 iffl=1thenprint"[205]eanwhile, without the pick..."
- 3298 fl=0
- 3300 printa$(8):goto1000
- 3310 ifs$<>"dig"then3990
- 3320 ifr<>11thens$="pick":goto5520
- 3330 ifo(10)=1thenprinta$(5):goto1000
- 3340 input"[215]here -- in one word?";c$
- 3342 ifc$<>"mark"andc$<>"bug"thenprinta$(8):goto1000
- 3350 o(22)=4:o(13)=r:print"[197]ureka!! [215]e've found it!!! [212]here's "
- 3352 print"real treasure here at last!!!":sc=4:goto1000
- 3990 printa$(2):prints$:goto1000
- 4000 rem4letterwords
- 4010 s$=left$(c$,4):s2$="":iflen(c$)>5thens2$=mid$(c$,6)
- 4020 ifs$<>"read"then4140
- 4030 ifc$="read"thenprinta$(1):goto1000
- 4040 ifleft$(s2$,4)="book"thenprint"[208]lease be more specific.":goto1000
- 4050 ifs2$="lolita"ando(6)=0thens=8:gosub26000:goto1000
- 4060 fl=0:if(s2$="dictionary"ors2$="ameslan")ando(8)=0thenfl=1
- 4062 iffl=1thens=9:gosub26000:fr=1:fl=0:goto1000
- 4070 ifs2$="manuscript"ando(23)=0thens=10:gosub26000:goto1000
- 4080 ifs2$="plaque"andr=1thens=12:gosub26000:goto1000
- 4090 ifs2$="sign"andr=5thens=16:gosub26000:goto1000
- 4100 ifs2$="note"andr=6thens=17:gosub26000:goto1000
- 4110 fl=0:ifs2$="ameslan"ors2$="lolita"ors2$="dictionary"thenfl=1
- 4112 iffl=1ors2$="manuscript"thenprinta$(11):fl=0:goto1000
- 4120 ifs2$="plaque"ors2$="sign"ors2$="note"thenprinta$(6):goto1000
- 4130 printa$(1):goto1000
- 4140 ifs$="push"thenc$="press "+s2$:s$="press":goto6280
- 4150 ifs$<>"take"then4300
- 4160 ifc$="take"thenprinta$(1):goto1000
- 4170 ifs2$="inventory"then14100
- 4180 ifr=3ando(7)=rthenprint"[212]he orangutan won't let me.":goto1000
- 4190 ifs2$="all"thenprint"[208]lease be more specific.":goto1000
- 4200 ifleft$(s2$,3)="jug"thenprinta$(10):goto1000
- 4205 ifs2$="hole"thenprint"[206]ow really...":goto1000
- 4210 fl=0:ifs$="take"andwt=7thenprint"[201] can't do that. [201]'m":fl=1
- 4212 iffl=1thenprint"carrying too much already.":fl=0:goto1000
- 4220 ifs2$="dictionary"thens2$="ameslan"
- 4230 fl=0:ifs2$="raven"thenprint"[200]e bites me on the finger.":fl=1
- 4232 iffl=1thenprint"[201]'d let him stay here.":fl=0:goto1000
- 4240 ifs2$="bag"ando(2)=rthens$="open":o(2)=0:goto4630
- 4250 restore:forx=1to23:reado$
- 4260 ifs2$=o$ando(x)=rtheno(x)=0:x=23:wt=wt+1:print"[207]kay.":tf=1:goto4280
- 4270 ifs2$=o$thenprinta$(6):x=23:tf=1
- 4280 next:restore:iftfthentf=0:goto1000
- 4290 print"[201] can't take:":prints2$:goto1000
- 4300 ifc$="save"orc$="save game"then21000
- 4310 ifs$="save"thenprinta$(10):goto1000
- 4320 ifs$<>"quit"then4350
- 4325 input"[196]o you wish to try again?";c$:ifc$="y"thenrun
- 4330 ifc$<>"n"andc$<>"no"then4330
- 4340 print"[193]ll right. [201]'ll be here whenever you're ready.":goto63900
- 4350 ifs$="fuck"thenprint"tsk, tsk.":goto1000
- 4360 ifs$="kick"thenprinta$(10):goto1000
- 4370 fl=0:ifs$="help"theninput"[210]eally???";c$:fl=1
- 4372 iffl=1thenifc$="y"orc$="yes"thens=48+sc:gosub26000:fl=0:goto1000
- 4375 ifs$="help"thenprint"let's wait until you really need it.":goto1000
- 4380 ifs$="kill"thenprinta$(10):goto1000
- 4390 ifs$<>"open"then4660
- 4400 ifs2$<>"door"then4490
- 4410 ifr=1andd(1)=0thend(1)=1:print"[207]kay.":goto1000
- 4420 ifr=2thenprinta$(7):goto1000
- 4430 ifr=6andd(8)=0thend(8)=1:print"[207]kay.":goto1000
- 4440 ifr=12andd(6)=0thend(6)=1:print"[207]kay.":goto1000
- 4450 ifr=13andd(5)=0thend(5)=1:print"[207]kay.":goto1000
- 4460 ifr=14thenprinta$(7):goto1000
- 4470 ifr=1orr=4orr=6orr=12orr=13thenprinta$(12):goto1000
- 4480 printa$(1):goto1000
- 4490 ifs2$="desk"andr=2thens=11:gosub26000:goto1000
- 4500 ifs2$="window"andr=3thenprinta$(12):goto1000
- 4510 ifs2$="clock"andr=3andd(7)=0thend(7)=1:print"[207]kay.":goto1000
- 4520 ifs2$="clock"andr=3thenprinta$(12):goto1000
- 4530 ifs2$<>"coffin"then4590
- 4540 ifr=5andd(4)=0thend(4)=1:print"[207]kay.":goto1000
- 4550 ifr=5thenprinta$(12):goto1000
- 4560 ifr=14andd(14)=0thenprinta$(7):goto1000
- 4570 ifr=14thenprinta$(12):goto1000
- 4580 printa$(6):goto1000
- 4590 ifs2$="walls"andr=8thenprinta$(7):goto1000
- 4600 ifs2$="walls"thenprinta$(10):goto1000
- 4610 ifs2$="floor"andr=8thenprinta$(7):goto1000
- 4620 ifs2$="floor"thenprinta$(10):goto1000
- 4630 fl=0:ifs2$="bag"ando(2)=0theno(2)=1000:o(3)=r:o(20)=r:fl=1
- 4632 iffl=1thenprint"[212]he bag disintegrates in my hands."
- 4634 iffl=1thenprint"[211]ome things fell out of it and seem to"
- 4636 iffl=1thenprint"be in good shape.":fl=0:goto1000
- 4640 ifs2$="desk"ors2$="window"ors2$="clock"ors2$="bag"thenprinta$(6):goto1000
- 4650 printa$(1):goto1000
- 4660 ifs$<>"look"then5010
- 4670 fl=0:ifs2$<>"orangutan"andr=3ando(7)=rthenfl=1
- 4672 iffl=1thenprint"[212]he orangutan won't let me.":fl=0:goto1000
- 4680 ifc$="look"ors2$="around"then13500
- 4690 fl=0:if(s2$="hole"andr=3)thenfl=1
- 4692 if(s2$="stairs"and(r=7orr=8))thenfl=1
- 4694 if((s2$="branches"ors2$="leaves"ors2$="sap")andr=12)thenfl=1
- 4696 if((s2$="handholds"ors2$="spring"ors2$="mechanism")andr=13)thenfl=1
- 4698 iffl=1thenprinta$(9):fl=0:goto1000
- 4700 fl=0:ifs2$="velvet"ors2$="lining"ors2$="lid"ors2$="bottom"thenfl=1
- 4702 ifs2$="sides"ors2$="lever"ors2$="pipe"orfl=1thenprinta$(9):fl=1:goto1000
- 4710 fl=0:ifs2$="down"ors2$="cobwebs"or(s2$="ladder"andr=4)thenfl=1
- 4712 if((s2$="pedestal"ors2$="perch")andr=5)thenfl=1
- 4714 if(s2$="tree"andr=11)or(left$(s2$,3)="jug"andr=7)thenfl=1
- 4716 iffl=1thenprinta$(9):fl=0:goto1000
- 4720 ifs2$="plaque"andr=1thens=12:gosub26000:goto1000
- 4730 fl=0:ifleft$(s2$,4)="book"thenprint"[208]lease be specific and give a title.":fl=1
- 4732 iffl=1thenfl=0:goto1000
- 4740 ifs2$="building"andr=1then13070
- 4750 ifs2$="building"thenprinta$(1):goto1000
- 4760 ifs2$="desk"andr=2thens=4:gosub26000:goto1000
- 4770 fl=0:if(s2$="shelves"ors2$="bookshelves")thenfl=1
- 4772 iffl=1andr=2and((o(6)=roro(8)=r)or(o(6)=1000))thens=5:gosub26000:fl=2
- 4774 iffl=2and(o(6)=rando(8)=r)or(o(6)=1000ando(8)=1000)thenfl=3
- 4776 iffl=3thens=6:gosub26000:o(6)=r:o(8)=r:fl=0
- 4780 if(s2$="shelves"ors2$="bookshelves")andr=2and(o(6)=roro(8)=r)then1000
- 4790 if(s2$="shelves"ors2$="bookshelves")andr=2thenprinta$(9):goto1000
- 4800 ifs2$="window"andr=3thens=13:gosub26000:goto1000
- 4810 ifs2$="clock"andr=3thens=14:gosub26000:goto1000
- 4820 ifs2$="fireplace"andr=3thens=15:gosub26000:goto1000
- 4830 ifs2$="coffin"and(r=5orr=14)thenprinta$(9):goto1000
- 4840 ifs2$="sign"andr=5thens=16:gosub26000:goto1000
- 4850 ifleft$(s2$,4)="wall"ors2$="floor"ors2$="door"thenprinta$(9):goto1000
- 4860 ifs2$="note"andr=6thens=17:gosub26000:goto1000
- 4870 ifleft$(s2$,3)="jug"andr=7thenprinta$(9):goto1000
- 4880 ifleft$(s2$,3)="jug"thenprinta$(6):goto1000
- 4890 ifs2$="pump"andr=10thens=46:gosub26000:goto1000
- 4900 ifs2$="ledge"andr=10thenprint"it's too high up.":goto1000
- 4910 ifs2$="tree"andr=11thenprinta$(9):goto1000
- 4920 fl=0:ifs2$="bottle"ando(5)=0thenfl=1
- 4922 iffl=1thenprint"[199]ood [199]rief! [201] don't know how it fit in,"
- 4924 iffl=1thenprint"but there's a manuscript stuffed in"
- 4926 iffl=1thenprint"there. [201]t comes out easily enough."
- 4928 iffl=1theno(23)=0:o(5)=1000:o(4)=0:fl=0:goto1000
- 4930 fl=0:ifs2$="bottle"ors2$="plaque"ors2$="desk"ors2$="shelves"thenfl=1
- 4932 ifs2$="bookshelves"ors2$="ladder"ors2$="coffin"ors2$="perch"thenfl=1
- 4934 ifs2$="pump"ors2$="ledge"ors2$="tree"thenfl=1
- 4936 iffl=1thenprinta$(6):fl=0:goto1000
- 4940 ifs2$="sign"ors2$="note"orleft$(s2$,3)="jug"ors2$="window"thenfl=1
- 4942 ifs2$="clock"ors2$="fireplace"ors2$="pedestal"thenfl=1
- 4944 iffl=1thenprinta$(6):fl=0:goto1000
- 4950 fl=0:forx=1to23:reado$:ifs2$=o$thenx=x+49:fl=1
- 4951 iffl=0then4960
- 4952 iffl=1ando(x-49)<>0ando(x-49)<>rthennext:printa$(6):restore:fl=0:goto1000
- 4960 next
- 4970 restore
- 4980 ifs2$="bricks"ando(11)=roro(11)=0thenx=61
- 4990 ifx<50thenprinta$(1):goto1000
- 5000 s=x-50+17:gosub26000:goto1000
- 5010 ifs$<>"drop"then5190
- 5020 ifs2$<>"all"then5070
- 5030 forx=1to23
- 5040 ifo(x)=0theno(x)=r
- 5050 next
- 5060 print"[207]kay.":wt=0:goto1000
- 5070 ifs2$="dictionary"thens2$="ameslan"
- 5080 ifteands2$="bug"ors2$="string"then5140
- 5090 forx=1to23:reado$
- 5100 ifs2$=o$ando(x)=0theno(x)=r:x=23:tf=1:wt=wt-1:print"[207]kay.":goto5120
- 5110 ifs2$=o$thenprinta$(5):x=23:tf=1
- 5120 next:restore:iftfthentf=0:goto1000
- 5130 print"i can't drop "+s2$:goto1000
- 5140 ifs2$="string"thenprint"[217]ou'd better untie it first.":goto1000
- 5150 fl=0:ifr<>12thenprinta$(8):print"[212]he string is still attached to my":fl=1
- 5152 iffl=1thenprint"finger.":fl=0:goto1000
- 5160 ifo(12)<>rthenprinta$(5):goto1000
- 5170 input"[196]rop it where -- in one word ";c$
- 5172 ifc$<>"skull"andc$<>"eye"andc$<>"socket"thenprinta$(10):goto1000
- 5180 s=47:gosub26000:goto1000
- 5190 ifs$="find"thenprinta$(7):goto1000
- 5200 ifs$<>"feed"then5270
- 5210 ifs2$<>"orangutan"then5250
- 5220 ifo(7)=rando(9)=0theno(9)=1000:print"he downs it in one bite.":goto1000
- 5230 ifo(7)<>rthenprinta$(7):goto1000
- 5240 printa$(7):goto1000
- 5250 ifs2$="raven"thenprinta$(10):goto1000
- 5260 printa$(1):goto1000
- 5270 ifs$<>"give"then5300
- 5271 ifo(7)<>rthenprinta$(10):goto1000
- 5272 ifs2$="banana"ando(9)=0thenprint"[200]e downs it in one bite.":o(9)=1000:goto1000
- 5273 ifs2$="opium"ando(18)=0thenprint"[200]e sniffs it and gives it back.":goto1000
- 5274 ifs2$="dictionary"thens2$="ameslan"
- 5275 forx=1to23:reado$
- 5276 ifs2$=o$ando(x)=0theno(x)=1000:x=23:tf=1:wt=wt-1:print"[200]e crushes it.":goto5278
- 5277 ifs2$=o$thenprinta$(5):x=23:tf=1
- 5278 next:restore:iftfthentf=0:goto1000
- 5279 print"i can't give "+s2$:goto1000
- 5290 printa$(1):goto1000
- 5300 ifs$<>"ring"then5360
- 5310 ifo(17)thenprinta$(5):goto1000
- 5320 ifs2$<>"bell"ands2$<>""thenprinta$(10):goto1000
- 5330 fl=0:print"[200]mmm. [211]ome mild tintinnabulation.":gosub63000
- 5332 print"[212]he raven has come and taken the bell away from me."
- 5334 o(17)=5:ifr=14thend(4)=1:fl=1
- 5336 iffl=1thenprint"[211]omehow he managed to leave the coffin top open! [201] can go up!"
- 5340 ifsc=4thensc=5
- 5350 goto1000
- 5360 ifs$<>"sign"then5440
- 5370 iffr=0thenprinta$(5):goto1000
- 5380 fl=0:ifs$=c$ors2$="hello"ors2$="hi"ors2$="help"ors2$="language"thenfl=1
- 5382 ifs2$="ameslan"orfl=1then5400
- 5390 printa$(1):goto1000
- 5400 ifo(7)<>rthenprinta$(8):goto1000
- 5410 print"[212]he orangutan signs back! '[200]ello!' he "
- 5412 print"signs. '[193]bout those [210]ue [205]orgue murders-"
- 5414 print"the butler did it, not me.'"
- 5416 print"[215]ait a minute, he's going over to the "
- 5418 print"fireplace.":gosub63000:print"[200]e's pulling out a corpse and taking "
- 5420 print"something out of it's hand. [200]e gives "
- 5421 print"it to me. [201]t's a small gold bug. [200]e's"
- 5422 print"signing again now, but too quickly for "
- 5423 print"for me to understand. [200]e hands me his"
- 5424 print"peach pit, thrusts the body back up the"
- 5425 print"fireplace, and jumps out the window."
- 5430 o(19)=0:o(16)=0:o(7)=1000:sc=1:goto1000
- 5440 ifs$<>"make"then5470
- 5450 ifs2$="sign"thens2$="":c$="sign":s$=c$:goto5360
- 5460 printa$(1):goto1000
- 5470 ifs$<>"jump"then5510
- 5480 ifc$=s$theninput"up or down?";c$:c$=left$(c$,1):goto1260
- 5490 ifs2$="up"ors2$="down"thenc$=left$(s2$,1):goto1210
- 5500 printa$(1):goto1000
- 5510 ifs$<>"pick"then5630
- 5520 ifo(10)thenprinta$(5):goto1000
- 5530 ifr=14thenprint"[212]here's not enough room to move for a solid swing.":goto1000
- 5540 ifr><8thenprinta$(10):goto1000
- 5550 ifs2$="floor"thend(3)=1:print"[200]ey!! [212]here's a passageway going down.":fl=1
- 5552 iffl=1thenprint"[201] hear a strong heartbeat-like noise.":sc=3:o(22)=r:goto1000
- 5560 ifleft$(s2$,4)<>"wall"thenprint"i can't "+c$:goto1000
- 5570 fl=0:ifleft$(s2$,4)="wall"theninput"[215]hich one [206]-[211]-[197]-[215]";c$:fl=1
- 5572 iffl=1thenifc$<>"n"andc$<>"s"andc$<>"e"andc$<>"w"thenprinta$(10):goto1000
- 5580 ifc$="w"thende=4:gosub27000:goto16000
- 5590 ifc$="n"thens=42
- 5600 ifc$="s"thens=43
- 5610 ifc$="e"thens=44
- 5620 gosub26000:goto1000
- 5630 ifs$<>"turn"ands$<>"pull"then5990
- 5640 ifr><10thenprinta$(10):goto1000
- 5650 ifs2$<>"lever"ands2$<>"pump"thenprinta$(1):goto1000
- 5660 s=45:gosub26000:print:r=11:goto13000
- 5990 printa$(2):prints$:goto1000
- 6000 remstart5letterwords
- 6010 s$=left$(c$,5):s2$="":iflen(c$)>6thens2$=mid$(c$,7)
- 6020 ifs$<>"climb"then6100
- 6030 if(s2$="ladder"ors2$="rope")andr=4andwt=0thenr=6:goto13000
- 6040 if(s2$="ladder"ors2$="rope")andr=4thens=41:gosub26000:f4=f4+1:goto1000
- 6050 ifs2$="stairs"and(r=7orr=8)thenr=r-1:goto13000
- 6060 ifs2$="tree"andr=11thenr=12:goto13000
- 6070 fl=0:ifleft$(s2$,4)="wall"thenprint"[201]t that a metaphorical statement?":fl=1
- 6072 iffl=1thenprint"[201] cannot climb these walls!!":goto1000
- 6080 ifs2$="ladder"ors2$="rope"ors2$="stairs"ors2$="tree"thenprinta$(6):goto1000
- 6090 printa$(1):goto1000
- 6100 ifs$="enter"andr=1andd(1)thenr=2:goto13000
- 6101 ifs$="enter"andr=1thenprinta$(4):goto1000
- 6105 ifs$="enter"thenprinta$(1):goto1000
- 6110 ifc$="leave"thenprint"[212]here's no turning back now.":goto1000
- 6120 ifs$="leave"thenc$="drop "+s2$:goto5070
- 6130 ifs$="throw"thenprinta$(10):goto1000
- 6140 ifs$="where"thenprint"you're on your own, pal.":goto1000
- 6150 ifs$<>"close"then6260
- 6160 ifs2$><"door"then6210
- 6170 ifr=2andd(1)thend(1)=0:print"[207]kay.":goto1000
- 6180 ifr=6andd(8)thend(8)=0:print"[207]kay.":goto1000
- 6190 ifr=2orr=6thenprinta$(5):goto1000
- 6200 printa$(1):goto1000
- 6210 ifs2$="coffin"andd(4)thenprint"[207]kay.":d(4)=0:goto1000
- 6220 ifs2$="coffin"thenprinta$(5):goto1000
- 6230 ifs2$="clock"andd(7)thend(7)=0:print"[207]kay.":goto1000
- 6240 ifs2$="clock"thenprinta$(5):goto1000
- 6250 printa$(10):goto1000
- 6260 ifc$="brief"thenbrief=1:print"[207]kay.":goto1000
- 6270 ifs$="smell"ors$="sniff"thenprint"puff puff.":goto1000
- 6280 ifs$="press"thenprinta$(8):goto1000
- 6290 fl=0
- 6291 ifc$="score"thenprint"[207]ut of a possible maximum score of 100, you have";:fl=1
- 6292 iffl=1thenprintint((sc/nt)*100):goto1000
- 6300 ifs$<>"light"then6350
- 6310 ifleft$(s2$,4)<>"flas"thenprinta$(10):goto1000
- 6320 ifo(15)=0andl=0thenl=1:print"[207]kay.":goto1000
- 6330 ifo(15)=0andl=1thenprint"it's already on.":goto1000
- 6340 printa$(5):goto1000
- 6350 ifs$="knock"thens$="rap":goto3290
- 6360 ifs$="break"thens$="pick":goto5520
- 6370 ifs$<>"untie"then6400
- 6380 ifte=0thenprinta$(5):goto1000
- 6390 o$(16)="small gold bug. ":o$(20)="length of string. "
- 6391 te=0:print"[207]kay.":goto1000
- 6400 ifc$="drink opium"thens2$="opium":goto3150
- 6990 printa$(2):prints$:goto1000
- 8000 remstart6letterwordshere
- 8010 s$=left$(c$,6):s2$="":iflen(c$)>7thens2$=mid$(c$,8)
- 8020 ifs$<>"insert"then8060
- 8030 fl=0:ifs2$="peach"ors2$="pit"ando(19)=0andr=3andd(7)=1andd(2)=0thenfl=1
- 8031 iffl=1thend(2)=1:print"[212]he pendulum has stopped moving. [201] can"
- 8032 iffl=1thenprint"go in there now!":o(19)=1000:sc=2:goto1000
- 8040 ifs2$="peach"ors2$="pit"thenprinta$(5):goto1000
- 8050 printa$(10):goto1000
- 8060 ifs$<>"listen"then8490
- 8070 ifo(3)thenprint"i don't hear anything remarkable.":goto1000
- 8080 ifr<>8thenprint"[200]mmmm. [201] don't hear anything.":goto1000
- 8090 ifleft$(s2$,4)="wall"thenprinta$(8):goto1000
- 8100 fl=0:ifs2$="floor"thenprint"[201] hear a steady throbbing, like a heart":fl=1
- 8102 iffl=1thenprint"beat. [212]here's something down there.!":goto1000
- 8110 printa$(1):goto1000
- 8490 printa$(2):prints$:goto1000
- 8500 rem7letterwords
- 8510 s$=left$(c$,7):s2$="":iflen(c$)>8thens2$=mid$(c$,9)
- 8520 ifs$<>"unlight"then8570
- 8530 ifo(15)thenprinta$(11):goto1000
- 8540 if(c$="unlight"orleft$(c$,12)="unlight flas")andl=1thenprint"[207]kay":l=0:lf=1
- 8541 iflfandr>7andr<14thendark=1
- 8542 iflfthenlf=0:goto1000
- 8550 fl=0:if(c$="unlight"orleft$(c$,12)="unlight flas")thenfl=1
- 8552 iffl=1thenprint"[212]he flashlight is not lit.":goto1000
- 8560 printa$(1):goto1000
- 8570 ifs$="examine"thenc$="look "+s2$:goto4670
- 8580 ifc$="breathe"thenprint"[208]uff! [208]uff!":goto1000
- 8590 ifc$="verbose"thenbr=0:print"[207]kay.":goto1000
- 8990 printa$(2):prints$:goto1000
- 9000 rem8letterwords
- 9010 s$=left$(c$,8):s2$="":iflen(c$)>9thens2$=mid$(c$,10)
- 9020 ifc$="bullshit"thenprint"[205]ooo!":goto1000
- 9030 ifs$="describe"thenc$="look "+s2$:goto4670
- 9040 printa$(2):prints$:goto1000
- 9500 rem9letterwords
- 9501 s$=left$(c$,9):s2$="":iflen(c$)>10thens2$=mid$(c$,11)
- 9510 ifleft$(c$,5)="inven"then14100
- 9520 printa$(2):prints$:goto1000
- 9600 rem11letterwords
- 9610 s$=left$(c$,11):s2$="":iflen(c$)>12thens2$=mid$(c$,13)
- 9620 ifleft$(c$,5)="steth"ando(3)thenprinta$(5):goto1000
- 9630 ifleft$(c$,5)="steth"thens$="listen":goto8080
- 9640 printa$(2):prints$:goto1000
- 13000 remroomchangeroutine
- 13001 d(4)=0:d(5)=0:f4=0:dark=0
- 13002 de(1)=0:de(2)=0
- 13010 open2,8,2,"r"+right$(str$(r),len(str$(r))-1)
- 13020 :
- 13030 input#2,ln
- 13040 forx=1toln:input#2,r$(x):next
- 13050 input#2,n,s,e,w,u,d
- 13060 close2
- 13070 remroomprints
- 13075 ifr=5andsc=5then17000
- 13090 fori=1toln
- 13100 forx=1tolen(r$(i))
- 13110 ifmid$(r$(i),x,1)="^"thenr$(i)=left$(r$(i),x-1)+","+mid$(r$(i),x+1)
- 13120 next
- 13125 ifl=0andr>7andr<14thennext:goto13250
- 13130 printr$(i):ifbrieftheni=ln
- 13140 next
- 13141 fl=0:ifr=8andd(3)thenprint"[212]here's a passageway going down. [201] can":fl=1
- 13142 iffl=1thenprint"hear a steady heartbeat-like noise."
- 13160 gosub14000
- 13165 rem if r=5andsc=5then17000
- 13170 goto1000
- 13250 print"[201]t's too dark to see in here.":dark=1:goto1000
- 13500 fori=1toln
- 13510 printr$(i):ifbrieftheni=ln
- 13520 next
- 13525 gosub14000:goto1000
- 14000 forx=1toa
- 14010 ifo(x)=rthenx=a:next:goto14040
- 14020 next
- 14030 return
- 14040 print:print"[212]he following items are in this area:"
- 14050 forx=1toa
- 14060 ifo(x)=rthenprintleft$(o$(x),len(o$(x))-1),;
- 14070 next
- 14075 printchr$(13)
- 14080 return
- 14100 forx=1toa
- 14110 ifo(x)=0thenx=a:next:goto14150
- 14120 next
- 14130 print"[201] am not carrying anything."
- 14140 goto1000
- 14150 print"[201] am carrying the following:"
- 14160 forx=1toa
- 14170 ifo(x)=0thenprintleft$(o$(x),len(o$(x))-1),;
- 14180 next
- 14190 print
- 14200 goto1000
- 15000 remintroductionandinitialization
- 15020 gosub15400:remintro
- 15030 gosub15500:reminitialize
- 15040 input"[147][196]o you wish to play a saved game";c$
- 15050 print
- 15060 ifc$="y"orc$="yes"thengoto20000
- 15070 ifc$<>"n"andc$<>"no"then15040
- 15075 print"[147]"
- 15080 goto13000
- 15400 print"[147]":print:printspc(15)"[208][207][197]-[208][207][197]-[208][207][197]":print:printspc(14)"by [202]im [205]enick"
- 15402 print:print:t$="[210]evised for the [195]-64 by [193]lan [199]ardner":gosub63200
- 15404 print:print:print:t$="[212]his game is loosely":gosub63200
- 15406 t$="-- [214][197][210][217][160][204][207][207][211][197][204][217] --":gosub63200
- 15408 t$="based upon the works of":gosub63200
- 15410 t$="[197]dgar [193]llan [208]oe.":gosub63200
- 15412 gosub63300:print:print:print
- 15414 t$="[212]he adventure has quite a large":gosub63200
- 15416 t$="vocabulary, and is capable of":gosub63200
- 15418 t$="understanding most one and two word":gosub63200
- 15420 t$="commands.":gosub63200:gosub63300
- 15422 t$="[193]bbreviations such as 'n' for north":gosub63200
- 15424 t$="or 'd' for down are acceptable.":gosub63200
- 15426 t$="[197]ither 'i' or 'inventory' will tell":gosub63200
- 15428 t$="you what your character is carrying.":gosub63200
- 15430 t$="'l' can be used for look. [198]or shorter":gosub63200
- 15432 t$="descriptions, type 'brief'.":gosub63200
- 15434 t$="[198]or the full description,":gosub63200
- 15436 t$="type 'verbose'.":gosub63200:gosub63300:gosub30000
- 15440 return
- 15500 remsetvariables,housekeeping
- 15510 :
- 15530 open2,8,2,"afile"
- 15540 :
- 15550 input#2,a
- 15570 forx=1toa:input#2,a$(x):print".";:next
- 15580 close2
- 15590 open2,8,2,"ofile2"
- 15600 :
- 15610 input#2,a
- 15630 forx=1toa:input#2,o$(x):print".";:input#2,o(x):print".";:next
- 15640 close2:print
- 15670 r=1:nt=5:l=0:wt=2
- 15710 dataraven,bag,stethoscope,empty,bottle,lolita,orangutan,ameslan,banana
- 15711 datapick,bricks,skull,picture,net,flashlight,bug,bell,opium,pit,string
- 15712 datapainting,hole,manuscript
- 15990 return
- 16000 remlosingscenario
- 16080 print:print"[215]ell, it happened to [208]oe and now it's ":
- 16082 print"happened to you. [215]elcome to the land "
- 16084 print"of they-who-push-up-daisies.":print
- 16090 print"[207]ut of a possible maximum score of 100, you have ";int((sc/nt)*100)
- 16100 input"[195]are to try again";c$
- 16110 ifc$="y"orc$="yes"thenrun
- 16120 ifc$="n"orc$="no"thenprint"[193]ll right. [201]'ll be here whenever you're ready."
- 16130 goto17050
- 17000 remwinningscenario
- 17010 forx=1to5:poke53281,x:next:poke53281,0
- 17020 print"[217]ou've done it!! [217]ou've gotten out and"
- 17022 print"found all of the treasures (how ever "
- 17024 print"meager they may appear now in the light"
- 17026 print"of day)."
- 17030 print"[195]ongratulations!! [217]ou've played very"
- 17032 print"well. [201] hope to see you again in the "
- 17034 print"future.":print
- 17050 goto63900
- 20000 remreopensavedgame
- 20010 open2,8,2,"gfile"
- 20020 :
- 20030 forx=1toa
- 20040 input#2,o(x)
- 20050 next
- 20060 input#2,r,l,wt,sc,fr,dark:input#2,te
- 20070 forx=1to8
- 20080 input#2,d(x)
- 20090 next
- 20100 close2
- 20101 iftetheno$(16)="small gold bug tied to piece of string. ":o$(20)=""
- 20102 print"[147]"
- 20110 goto13000
- 21000 remsavegame
- 21010 open15,8,15:print#15,"s0:gfile":close15
- 21020 open2,8,2,"0:gfile,s,w"
- 21030 forx=1toa
- 21040 print#2,o(x)
- 21050 next
- 21060 print#2,r:print#2,l:print#2,wt:print#2,sc:print#2,fr:print#2,dark
- 21062 print#2,te
- 21070 forx=1to8
- 21080 print#2,d(x)
- 21090 next
- 21100 close2
- 21105 printchr$(13):print"game saved."
- 21110 goto1000
- 25000 remdeathinroom4
- 25010 de(1)=de(1)+1:de=1:gosub27000:return
- 25030 remdeathinroom14
- 25040 de(2)=de(2)+1:de=2:gosub27000:return
- 26000 remhandlest$strings
- 26010 open2,8,2,"stfile":hi=int(s/256):lo=s-hi*256
- 26020 open15,8,15:print#15,"p"chr$(2)chr$(lo)chr$(hi)chr$(1):input#2,q8
- 26030 forq9=1toq8:print#15,"p"chr$(2)chr$(lo)chr$(hi)chr$(5+41*(q9-1))
- 26035 :
- 26040 input#2,s$
- 26050 prints$:nextq9:close2:close15
- 26060 return
- 26065 :
- 27000 remhandledeathstrings
- 27010 open2,8,2,"d"+right$(str$(de),len(str$(de))-1)
- 27020 :
- 27030 input#2,q8:forq9=1toq8:input#2,d$:printd$:nextq9
- 27040 close2
- 27050 :
- 27060 return
- 30000 print"[147]"
- 30010 t$="[193]n adventure game is a game in which":gosub63200
- 30020 t$="you travel from place to place,":gosub63200
- 30030 t$="interact with characters, and ":gosub63200
- 30040 t$="manuipulate objects to reach a goal.":gosub63200
- 30050 t$="[212]hat goal is usually to collect" :gosub63200
- 30060 t$="treasures and to survive.":gosub63200
- 30070 t$="[217]ou may save a game in progress":gosub63200
- 30080 t$="by typing 'save' when you are" :gosub63200
- 30090 t$="asked for a command.":gosub63200:gosub63300:return
- 63000 forpause=1to2500:next:return
- 63100 fl=0
- 63102 ifs2$="clock"ors2$="hole"ors2$="plaque"ors2$="desk"ors2$="shelves"thenfl=1
- 63104 ifs2$="bookshelves"ors2$="ladder"ors2$="coffin"ors2$="raven"thenfl=1
- 63106 ifs2$="perch"ors2$="pump"ors2$="ledge"ors2$="tree"thenfl=1
- 63108 ifleft$(s2$,4)="pass"thenfl=1
- 63110 iffl=1thenprinta$(6):return
- 63200 rem centering
- 63202 t=len(t$):t=20-t/2:printtab(t)t$:print:return
- 63300 rem wait for keypress
- 63302 poke783,peek(783)and254
- 63304 poke781,23:poke782,13:sys65520:print"<press a key>":poke198,0:wait198,1:getc$
- 63306 print"[147]":return
- 63900 fordl=1to5000:next
- 63901 print"[147]load"chr$(34)"hello"chr$(34)",8":print"run"
- 63902 poke631,13:poke632,13:poke198,2:end
-